package com.tabnet.dao;

import java.util.Map;

import com.tabnet.beans.produit.Accessoire;
import com.tabnet.beans.produit.Produit;

public interface DAOAccessoire {
	
	/**
	 * Méthode qui permet de lister les accessoires du produit passé en paramètre
	 * @param refProd la référence du produit
	 * @return map
	 * @throws DAOException
	 */
	public Map<String, Accessoire> listerAccessoire(String refProd) throws DAOException;
	
	/**
	 * Méthode qui permet de lister tous les accessoires
	 * @return map
	 * @throws DAOException
	 */
	public Map<String, Accessoire> listerAccessoire() throws DAOException;
	
	/**
	 * Méthode qui permet de lier les accessoires au produit passé en paramètre
	 * @param prod
	 * @throws DAOException
	 */
	public void lierAccessoires(Produit prod) throws DAOException;
	
	/**
	 * <p>Procédure addAccessoire<br />
	 * Ajoute un accessoire dans la base de données</p>
	 * @param pAccessoire : un objet Accessoire
	 * @throws DAOException
	 * */
	public void addAccessoire(Accessoire pAccessoire) throws DAOException;
	
	/**
	 * <p>Procédure updAccessoire<br />
	 * Met a jour un accessoire dans la base de données</p>
	 * @param pAccessoire : un objet Accessoire
	 * @throws DAOException
	 * */
	public void updAccessoire(Accessoire pAccessoire) throws DAOException;
	
	/**
	 * <p>Procédure addAccessoire<br />
	 * Supprime un accessoire dans la base de données</p>
	 * @param pRef : reference d'un accessoire
	 * @throws DAOException
	 * */
	public void delAccessoire(String pRef) throws DAOException;

}
